home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 2: CDPD 1 / Almathera Ten on Ten - Disc 2: CDPD 1.iso / pd / 076-100 / 084 / ed / set.c < prev    next >
C/C++ Source or Header  |  1995-03-13  |  1KB  |  73 lines

  1. /*
  2.  * Copyright 1987 Brian Beattie Rights Reserved.
  3.  *
  4.  * Permission to copy and/or distribute granted under the
  5.  * following conditions:
  6.  *
  7.  * 1). No charge may be made other than resonable charges
  8.  *    for reproduction.
  9.  *
  10.  * 2). This notice must remain intact.
  11.  *
  12.  * 3). No further restrictions may be added.
  13.  *
  14.  */
  15. #include <stdio.h>
  16. #include "tools.h"
  17. #include "ed.h"
  18.  
  19. struct tbl {
  20.     char    *t_str;
  21.     int    *t_ptr;
  22.     int    t_val;
  23. } *t, tbl[] = {
  24.     "number",    &nflg,        TRUE,
  25.     "nonumber",    &nflg,        FALSE,
  26.     "list",        &lflg,        TRUE,
  27.     "nolist",    &lflg,        FALSE,
  28.     "eightbit",    &eightbit,    TRUE,
  29.     "noeightbit",    &eightbit,    FALSE,
  30.     0
  31. };
  32.  
  33. set()
  34. {
  35.     char    word[16];
  36.     int    i;
  37.  
  38.     inptr++;
  39.     if(toupper(*inptr) != 'T')
  40.     {
  41.         if(*inptr != SP && *inptr != HT && *inptr != NL)
  42.             return(ERR);
  43.     } else
  44.         inptr++;
  45.  
  46.     if(*inptr == NL)
  47.         return(show("all"));
  48.         /* skip white space */
  49.     while(*inptr == SP || *inptr == HT)
  50.         inptr++;
  51.  
  52.     for(i = 0; *inptr != SP && *inptr != HT && *inptr != NL;)
  53.         word[i++] = *inptr++;
  54.     word[i] = EOS;
  55.     for(t = tbl; t->t_str; t++)
  56.     {
  57.         if(strcmp(word,t->t_str) == 0)
  58.         {
  59.             *t->t_ptr = t->t_val;
  60.             return(0);
  61.         }
  62.     }
  63. }
  64.  
  65. show()
  66. {
  67.     extern int    version;
  68.  
  69.     printf("ed version %d.%d\n",version/100,version%100);
  70.     printf("number %s, list %s\n",nflg?"ON":"OFF",lflg?"ON":"OFF");
  71.     return(0);
  72. }
  73.